package fr.aendawyn.as3lecteuraudio {

	/**	<p>La classe <code>PisteAudio</code> contient les informations concernant une piste
	 * 	lue dans la classe <code>LecteurAudio</code>.</p>
	 *
	 * 	@author Adrien Quillet
	 */
	public class PisteAudio {
		private var _commentaires:String;

		private var _album:String;

		private var _genre:String;

		private var _titre:String;

		private var _artiste:String;

		private var _numeroPiste:int;

		private var _annee:int;

		/**	<p>Cree une instance de <code>PisteAudio</code>. Tous les attributs de classe sont en
		 * 	lecture seule ; les instances sont donc figées.</p>
		 * 	<p>Les informations proviennent des tags ID3.</p>
		 *
		 * @param titre				titre d'une chanson
		 * @param artiste			artiste de la chanson
		 * @param numeroPiste		numero de la piste dans son album
		 * @param album				nom de l'album
		 * @param annee				annee de parution de l'album
		 * @param genre				genre de la chanson
		 * @param commentaires		commentaires
		 */
		public function PisteAudio(titre:String, artiste:String = "", numeroPiste:int = 0, album:String = "",
								   annee:int = 0, genre:String = "", commentaires:String = "") {
			_titre = titre;
			_artiste = artiste;
			_numeroPiste = numeroPiste;
			_album = album;
			_annee = annee;
			_genre = genre;
			_commentaires = commentaires;
		}

		/**	<p>Commentaires associes a la chanson.</p>
		 *
		 * @return
		 */
		public function get commentaire():String {
			return _commentaires;
		}

		/**	<p>Nom de l'album contenant cette chanson.</p>
		 *
		 * @return
		 */
		public function get album():String {
			return _album;
		}

		/**	<p>Genre de la chanson.</p>
		 *
		 * @return
		 */
		public function get genre():String {
			return _genre;
		}

		/**	<p>Titre de la chanson.</p>
		 *
		 * @return
		 */
		public function get titre():String {
			return _titre;
		}

		/**	<p>Artiste ayant cree cette chanson.</p>
		 *
		 * @return
		 */
		public function get artiste():String {
			return _artiste;
		}

		/**	<p>Numero de la piste dans son album.</p>
		 *
		 * @return
		 */
		public function get numeroPiste():int {
			return _numeroPiste;
		}

		/**	<p>Annee de parution de l'album.</p>
		 *
		 * @return
		 */
		public function get annee():int {
			return _annee;
		}
	}
}
